Welcome to pandas!

2.7 表格选择之筛选法

使用筛选方法来选择表格数据是一种常见的手段,行的筛选格式为df[条件表达式]

1、行选择:在df[]中提供了一组布尔值,关于布尔值必须遵循以下两个条件:

(1) 布尔值的元素个数必须与df表的行数相同,因为布尔值在df表的行是一一对应的,true表示选择,False表示不选择;

(2) 布尔值必须存储在列表、数组、Seires等数据结构中。

2、列选择:没有

3、区域选择:利用筛选方式选择后,再与选择的列进行交叉,也可以实现区域的选择。


原数据:

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path, index_col =0)

t=df

print(t)

返回:

姓名 姓别 1月 2月 3月
序号
NED01 小王 87 79 37
NED02 小曾 55 27 48
NED03 小李 34 47 85
NED04 小张 67 85 59
NED05 小林 67 49 76

放布尔值

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df[ "1月" ]>50

print(t)

返回:

0    True

1    True

2    False

3    True

4    True

Name: 1月, dtype: bool


布尔值写入DataFrame筛选

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df[ "1月" ]>60

print (df[t])

返回:

序号 姓名 姓别 1月 2月 3月
0 NED01 小王 87 79 37
3 NED04 小张 67 85 59
4 NED05 小林 67 49 76

区域:

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df[ "1月" ]>60

print (df[t][[ "姓名","姓别","2月" ]])

返回:

姓名 姓别 2月
0 小王 79
3 小张 85
4 小林 49